const jwt = require('jsonwebtoken')

const verifyToken = (req, res, next) => {
    const token = req.headers['authorization']?.split(' ')[1] // Bearer <token>

    if (!token) {
        return res.status(401).json({ message: '未提供 token' })
    }

    jwt.verify(token, process.env.JWT_SECRET || 'secret_key', (err, decoded) => {
        if (err) {
            if (err.name === 'TokenExpiredError') {
                return res.status(401).json({ message: 'token 已过期' })
            }
            return res.status(401).json({ message: 'token 无效' })
        }

        console.log('Decoded token:', decoded);
        req.user = decoded
        next()
    })
}
module.exports = { verifyToken };